1. Field of the Invention
The present invention relates to a computer interfacing device and more particularly to a PCI-based interfacing device with mappable port addresses to legacy I/O (input/output) port addresses.
2. Description of the Related Art
Users rely on input and output devices to communicate with conventional personal computer systems. The input devices normally include mice and keyboards, and the output devices include displays, speakers and printers. Each of the input devices and the output devices needs to communicate with the personal computer systems through a computer interface. The so-called computer interface is termed as a “port”. The personal computer systems acquire data from the input devices or transmit data to the output devices through the ports. As far as the most frequently used input devices and output devices are concerned, early personal computer systems, such as AT/286/386/486, are all defined and built in with corresponding I/O port addresses as follows to interface with the input and output devices.
Table of I/O port addresses of AT/286/386/48000~01FDMA controller #1 (8237)020~03FInterrupt controller #1 (8259A)022~012CHIPSET Control Registers. I/O port.040~05FTimer (8254)060~06FKeyboard control IC(8742)070~07FReal Time Clock   NMI mask080~09FDMA page register (74LS612)0A0~0BFInterrupt controller #2 (8259A)0C0~0DFDMA controller #2 (8237)0F0Clear math co-processor busy signal0F1Reset math co-processor0F8~0FFMath co-processor1F0~1F8Hard disk200~207GAME I/O278~27FLPT22B0~2DFGRAPHICS Adapter Controller2F8~2FFCOM2300~31FProto Type Card360~36FPC network378~37FLPT1380~38FSDLC/Bisync com23A0~3AFSDLC/Bisync com 13B0~3BFMonochrome display and printeradapters3C0~3CFEGA card3D0~3DFCGA card3F0~3F7Floppy drive controller3F8~3FFCOM1
From the table, the personal computer systems at least have 27 sets of basic I/O port addresses, such as 0x278˜0x27F, 0x378˜0x37F and 0x3BC˜0x3BF, embedded therein to interface with the legacy I/O ports used by various peripheral equipment, such as printers and the like. Hence, existing personal computers still keep those I/O port addresses to interface with the legacy I/O ports so that the personal computers can communicate with traditional industrial equipment through the legacy I/O ports of the industrial equipment.
To keep abreast with continuous technological development, every personal computer system is equipped with a new type of I/O interface, such as PCI (Personal Computer Interface) port or PCIe (PCI-Express) port. Once personal computer systems get upgraded or replaced, the original legacy I/O ports, such as LPT or COM, of the industrial equipment in connection with the personal computer systems fail to communicate with the personal computer systems. A PCI interface card is available in the market to convert the PCI ports thereof into corresponding legacy I/O ports. However, the PCI or PCIe interface card is operated in personal computer systems based on a plug-and-play fashion and the resources and addresses of the I/O ports are dynamically allocated by the personal computer systems. Such dynamic allocation generally assigns non-legacy I/O port addresses to the PCI-based interface card. The non-legacy I/O port addresses fail such PCI-based interface card as a solution through which the traditional industrial equipment can communicate with the personal computer systems.